
import java.io.File;
import java.util.Scanner;

public class Demo15 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入搜索的根目录");
        File rootPath = new File(scanner.next());
        System.out.println("请输入删除的关键词");
        String word = scanner.next();

        if (!rootPath.isDirectory()) {
            System.out.println("路径不合法");
            return;
        }
        scanDir(rootPath, word);

        scanner.close();
    }

    public static void scanDir(File currentDir, String word) {
        //先列出当前目录包含哪些内容
        File[] files = currentDir.listFiles();
        if (files == null || files.length == 0) {
            //空目录/非法目录
            return;
        }
        for (File f : files) {
            System.out.println(f.getAbsolutePath());
            if (f.isFile()) {
                //3看当前文件是普通文件，看文件名字，是否包含word，来决定是否删除
                dealFile(f, word);
            } else {
                //4假如是当前文件是目录文件（文件夹）就再次递归，直到找到文件。
                scanDir(f, word);
            }
        }
    }

    private static void dealFile(File f, String word) {
        //是根据文本的是名字删除,假如不存在就返回
        if (!f.getName().contains(word)) {
            return;
        }
        //打印删除文件的路径
        System.out.println("要删除的文件：" + f.getAbsolutePath());
        f.delete();
    }
}


